package com.xbongbong.pro.enums.errorcodes;

import com.xbongbong.i18n.util.I18nMessageUtil;

/**
 *
 * @author 魏荣杰
 *
 */
public enum BuinessDefaultErrorCodeEnum implements ErrorCode {

    // 业务级通用错误
    API_ERROR_200010(200010, "enum.errorCode.msg.api_error_200010"),
    API_ERROR_200011(200011, "enum.errorCode.msg.api_error_200011"),
    API_ERROR_200012(200012, "enum.errorCode.msg.api_error_200012"),
    API_ERROR_200013(200013, "enum.errorCode.msg.api_error_200013"),
    API_ERROR_200014(200014, "enum.errorCode.msg.api_error_200014"),
    API_ERROR_200015(200015, "enum.errorCode.msg.api_error_200015"),
    API_ERROR_200016(200016, "enum.errorCode.msg.api_error_200016"),
    API_ERROR_200017(200017, "enum.errorCode.msg.api_error_200017"),
    API_ERROR_200018(200018, "enum.errorCode.msg.api_error_200018"),
    API_ERROR_200019(200019, "enum.errorCode.msg.api_error_200019"),
    API_ERROR_200020(200020, "enum.errorCode.msg.api_error_200020"),
    API_ERROR_200021(200021, "enum.errorCode.msg.api_error_200021"),
    API_ERROR_200022(200022, "enum.errorCode.msg.api_error_200022"),
    API_ERROR_200023(200023, "enum.errorCode.msg.api_error_200023"),
    API_ERROR_200024(200024, "enum.errorCode.msg.api_error_200024"),
    API_ERROR_200025(200025, "enum.errorCode.msg.api_error_200025"),
    API_ERROR_200026(200026, "enum.errorCode.msg.api_error_200026"),
    API_ERROR_200027(200027, "enum.errorCode.msg.api_error_200027"),
    API_ERROR_200028(200028, "enum.errorCode.msg.api_error_200028"),
    API_ERROR_200029(200029, "enum.errorCode.msg.api_error_200029"),
    /**
     * 业务校验错误
     * @see com.xbongbong.saas.constant.ErrorMessageConstant
     */
    API_ERROR_200030(200030, "enum.errorCode.msg.api_error_200030"),
    ;
    /**
     * 错误类型
     * @see ErrorCodeTypeEnum
     */
//    private final String type;
    /**
     * 错误码
     */
    private final int code;
    /**
     * 错误描述
     */
    private final String msg;

    BuinessDefaultErrorCodeEnum(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    @Override
    public int getCode() {
        return code;
    }

    @Override
    public String getMsg() {
        return I18nMessageUtil.getMessage(msg);
    }
}
